package com.sinog.biz.service.business;

import com.sinog.core.utilbean.Result;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;

/**
 * @desc 安置帮教管理 - 帮教工作信息管理 - 帮教对象走访管理 - service
 * @author wangxj
 * @date 2022/3/9 11:14
 */
@RestController
public interface PrisonerVisitService {

    /**
     * 安置帮教管理 - 帮教对象信息管理 - 帮教对象走访管理 - 未走访列表
     * @param pageIndex pageIndex
     * @param pageSize pageSize
     * @param parameterMap 条件(名称模糊查询,是否重点帮教对象,上次走访时间)
     * @param departId 当前用户ID
     * @param level 当前登录用户level
     * @param orgid 上级编号
     * @return String
     */
    @RequestMapping("/azbj/azbjgl/getUnZfBaseInfoList")
    String getUnZfBaseInfoList(
            @RequestParam("pageIndex") Integer pageIndex,
            @RequestParam("pageSize") Integer pageSize,
            @RequestParam Map<String,Object> parameterMap,
            @RequestParam("departId") String departId,
            @RequestParam("level") int level,@RequestParam("orgid") String orgid);

    /**
     * 安置帮教管理 - 帮教对象信息管理 - 帮教对象走访管理 - 已走访列表
     * @param pageIndex pageIndex
     * @param pageSize pageSize
     * @param parameterMap 条件 -- 名称模糊查询,是否重点帮教对象,上次走访时间
     * @param departId 当前用户ID
     * @param level 当前登录用户level
     * @param orgid 上级编号
     * @return String
     */
    @RequestMapping("/azbj/azbjgl/getZfBaseInfoList")
    String getZfBaseInfoList(
            @RequestParam("pageIndex") Integer pageIndex,
            @RequestParam("pageSize") Integer pageSize,
            @RequestParam Map<String,Object> parameterMap,
            @RequestParam("departId") String departId,
            @RequestParam("level") int level,@RequestParam("orgid") String orgid);

    /**
     * 安置帮教管理 - 帮教工作信息管理 - 帮教对象走访管理 - 走访 - 查看
     * @param priNum 服刑人员编号
     * @return Result
     */
    @RequestMapping("/azbj/azbjgl/getPrisonerBaseInfo")
    Result getPrisonerBaseInfo(@RequestParam("priNum") String priNum);

    /**
     * 安置帮教管理 - 帮教工作信息管理 - 帮教对象走访管理 - 走访 - 查看
     * @param zfId 走访编号
     * @return Result
     */
    @RequestMapping("/azbj/azbjgl/zfBaseInfo")
    Result getzfBaseInfo(@RequestParam("zfId") String zfId);

    /**
     * 帮教工作管理 - 帮教对象走访管理 - 帮教对象走访管理 - 新增/编辑 - 走访保存
     * @param dataStr 保存信息
     * @return Result
     */
    @RequestMapping("/azbj/azbjgl/saveBjZfInfo")
    Result saveBjZfInfo(@RequestParam("dataStr") String dataStr);

    /**
     * 帮教工作管理 - 帮教对象走访管理 - 帮教对象走访管理 - 删除走访
     * @param zfId 走访编号
     * @return Result
     */
    @RequestMapping("/azbj/azbjgl/delZfInfoAction")
    Result delZfInfoAction(@RequestParam("zfId") String zfId);

    /**
     * 安置帮教管理 - 帮教工作信息管理 - 帮教对象走访管理 - 走访 - 列表
     * @param priNum priNum
     * @return List<Map < String,Object>>
     */
    @RequestMapping("/azbj/azbjgl/getZfInfoList")
    List<Map<String,Object>> getZfInfoList(@RequestParam("priNum") String priNum);
}